package com.vimi8.ebb.auth.model;

import java.util.Objects;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;



/**
 * 组织类型,用于内置括授权类型和权限范围.
 **/

/**
 * 组织类型,用于内置括授权类型和权限范围.
 */
@ApiModel(description = "组织类型,用于内置括授权类型和权限范围.")
@javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringCodegen", date = "2016-10-12T09:24:20.249Z")

public class UserApplyClientResource   {
  private String userId = null;

  private String clientId = null;

  private String resourceId = null;

  private String scope = null;
  private String job = null;
  private Integer createTime = null;

  private Integer updateTime = null;

  public UserApplyClientResource userId(String userId) {
    this.userId = userId;
    return this;
  }
  @ApiModelProperty(value = "用户工种(org_manager:农场管理员,  org_shareholder：股东，org_sernior_manager:高级管理员，org_shareholder_manager： 既是管理员又是股东，org_shareholder_senior_manager： 既是高级管理员又是股东， org_emp:组织里面的员工).")
  public String getJob() {
    return job;
  }

  public void setJob(String job) {
    this.job = job;
  }
  public UserApplyClientResource job(String job) {
    this.job = job;
    return this;
  }
  /**
   * 用户id.
   * @return userId
  **/
  @ApiModelProperty(value = "用户id.")
  public String getUserId() {
    return userId;
  }

  public void setUserId(String userId) {
    this.userId = userId;
  }

  public UserApplyClientResource clientId(String clientId) {
    this.clientId = clientId;
    return this;
  }

   /**
   * 客服端id.
   * @return clientId
  **/
  @ApiModelProperty(value = "客服端id.")
  public String getClientId() {
    return clientId;
  }

  public void setClientId(String clientId) {
    this.clientId = clientId;
  }

  public UserApplyClientResource resourceId(String resourceId) {
    this.resourceId = resourceId;
    return this;
  }

   /**
   * 资源id.
   * @return resourceId
  **/
  @ApiModelProperty(value = "资源id.")
  public String getResourceId() {
    return resourceId;
  }

  public void setResourceId(String resourceId) {
    this.resourceId = resourceId;
  }

  public UserApplyClientResource scope(String scope) {
    this.scope = scope;
    return this;
  }

   /**
   * 权限范围.
   * @return scope
  **/
  @ApiModelProperty(value = "权限范围.")
  public String getScope() {
    return scope;
  }

  public void setScope(String scope) {
    this.scope = scope;
  }

  public UserApplyClientResource createTime(Integer createTime) {
    this.createTime = createTime;
    return this;
  }

   /**
   * 创建时间.
   * @return createTime
  **/
  @ApiModelProperty(value = "创建时间.")
  public Integer getCreateTime() {
    return createTime;
  }

  public void setCreateTime(Integer createTime) {
    this.createTime = createTime;
  }

  public UserApplyClientResource updateTime(Integer updateTime) {
    this.updateTime = updateTime;
    return this;
  }

   /**
   * 更新时间.
   * @return updateTime
  **/
  @ApiModelProperty(value = "更新时间.")
  public Integer getUpdateTime() {
    return updateTime;
  }

  public void setUpdateTime(Integer updateTime) {
    this.updateTime = updateTime;
  }


  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    UserApplyClientResource userApplyClientResource = (UserApplyClientResource) o;
    return Objects.equals(this.userId, userApplyClientResource.userId) &&
        Objects.equals(this.clientId, userApplyClientResource.clientId) &&
        Objects.equals(this.resourceId, userApplyClientResource.resourceId) &&
        Objects.equals(this.scope, userApplyClientResource.scope) &&
        Objects.equals(this.createTime, userApplyClientResource.createTime) &&
        Objects.equals(this.updateTime, userApplyClientResource.updateTime);
  }

  @Override
  public int hashCode() {
    return Objects.hash(userId, clientId, resourceId, scope, createTime, updateTime);
  }

  @Override
  public String toString() {
    return "UserApplyClientResource{" +
            "userId='" + userId + '\'' +
            ", clientId='" + clientId + '\'' +
            ", resourceId='" + resourceId + '\'' +
            ", scope='" + scope + '\'' +
            ", job='" + job + '\'' +
            ", createTime=" + createTime +
            ", updateTime=" + updateTime +
            '}';
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
}

